<?php
/**
 * 一个通用的 Modal实现方案，modal 内容通过 ajax get 接口动态获取
 */
use yii\bootstrap4\Modal;

/** @var yii\web\View $this */
/** @var string $modalId */

$scrollable = isset($scrollable) ? $scrollable : false;
$size = isset($size) ? $size : '';

Modal::begin([
    'id' => $modalId,
    'scrollable' => $scrollable,
    'title' => '', // 如果初始化时不设置，就不会生成控件对象，后序就无法更新
    'size' => $size,
]);
Modal::end();

$js = <<< JS

$(function(){
    $('#'+"$modalId").on('show.bs.modal', function(event){
        let button = $(event.relatedTarget)

        /** 定义了两个特殊属性, 'data-bf-title', 'data-bf-url' */
        let title = button.data('bf-title')
        let url = button.data('bf-url');
        console.log(title + ' ' + url);

        let modal = $(this)

        modal.find('.modal-title').text(title)

        // $.get('/match-stat/ajax-update', {id: id}, function(data){
        $.get(url, {}, function(data){
            modal.find('.modal-body').html(data)
            modal.modal() // 这个必须调用吗？
        })
    })
})
JS;

$this->registerJs($js);
?>
